Plongez dans le Point de vue du programme au niveau machine, où la complexité du matériel est abstraite en un espace structuré Espace d'adressage virtuel. Dans ce point de vue, la mémoire n'est pas une collection de variables, mais un grand tableau contigu de blocs de 8 bits appelés octets. Pour une machine dont la taille des mots est de $w$ bits, ces adresses vont de $0$ à $2^w - 1$, définissant les limites de l'accès du programme.
1. La puissance de 16
Le binaire est le langage des circuits, mais Notation hexadécimale est le langage des programmeurs. Puisque $16 = 2^4$, un seul chiffre hexadécimal (0–F) correspond parfaitement à un quartet de 4 bits. Cela permet d'exprimer de manière concise une valeur sur un octet par exactement deux chiffres (par exemple, 0xFF). Ce raccourci est essentiel pour lire code machine et code assembleur, comme l'instruction 4004dc : 48 03 47 28.
2. Précision et arithmétique
Lorsque nous manipulons Types de données entiers, nous rencontrons anneaux booléens et complément à deux logique. Nous devons naviguer entre ordre little-endian stockage, dépassement d'entier, et les subtilités de précision simple flottant où l'infini ($+\infty$) et NaN se trouvent. Comprendre ces motifs binaires est la première étape pour maîtriser arithmétique de taille arbitraire et la programmation système robuste.